package com.example;

import java.util.ArrayList;
import java.util.Scanner;

public class Main1 {
    public static void main(String[] args) {
        f(5);
    }
    private static void f(int n){
        ArrayList<Integer> list = new ArrayList<>();
        if (n <= 2){
            for (int i = 0; i < n; i++) {
                list.add(1);
            }
            System.out.println(list);
        }
        int pre1 = 1;
        int pre2 = 1;
        int current = 0;
        list.add(pre1);
        list.add(pre2);
        for (int i = 3; i <= n ; i++) {
            // 第三位数等于前两位之和
            current = pre1 + pre2;
            // 计算完以后 原来第一位变成了第二位
            pre1 = pre2;
            // 原来第二位变成了当前位 即 原来一二位同时增加，为后面做计算
            pre2 = current;
            list.add(current);
        }
        System.out.println(list);
    }

}
